Certain computer systems are used in a number of industries, such as the communications industry, for order entry and order fulfillment. Order entry is the process of electronically receiving orders and entering the orders into the computer system, where the orders are stored as one or more entities within the computer system, so that the orders can be electronically fulfilled. Orders can contain data regarding one or more products, the pricing of one or more products, and one or more offers related to the one or more products. Orders can be received from any type of customer, such as businesses and individual consumers. Order fulfillment is the process of electronically fulfilling the orders, once the orders have been entered into the computer system. Order fulfillment generally entails one or more of the following steps: validating the order, interfacing the order to a billing system or subsystem, shipping physical goods, scheduling installation of equipment, installing equipment, and activating services. Order fulfillment can also entail other steps not listed that are part of a process of electronically fulfilling an order.
A computer system can receive orders that are in a structured format or a generic format. If the orders are in a generic format, the orders can include parameters that are merely name-value pairs, or some other loosely-typed format. However, the products (e.g., services or resources) that are associated with the order can be defined using a structured (i.e., strongly-typed format). Currently, there is no straight-forward mechanism to transform the name-value pairs or other formats to a structured format, without over-crowding an order template with all the product parameters.